s->macaddr[4],
s->macaddr[5]);
- register_savevm("ne2000", 0, 2, ne2000_save, ne2000_load, s);
+ register_savevm("ne2000", base, 2, ne2000_save, ne2000_load, s);
}
/***********************************************************/
PCINE2000State *d;
NE2000State *s;
uint8_t *pci_conf;
+ int instance;
d = (PCINE2000State *)pci_register_device(bus,
"NE2000", sizeof(PCINE2000State),
s->macaddr[4],
s->macaddr[5]);
- /* XXX: instance number ? */
- register_savevm("ne2000", 0, 2, ne2000_save, ne2000_load, s);
- register_savevm("ne2000_pci", 0, 1, generic_pci_save, generic_pci_load,
- &d->dev);
+ instance = pci_bus_num(bus) << 8 | s->pci_dev->devfn;
+ register_savevm("ne2000", instance, 2, ne2000_save, ne2000_load, s);
+ register_savevm("ne2000_pci", instance, 1, generic_pci_save,
+ generic_pci_load, &d->dev);
}
{
PCNetState *d;
uint8_t *pci_conf;
+ int instance;
#if 0
printf("sizeof(RMD)=%d, sizeof(TMD)=%d\n",
d->vc = qemu_new_vlan_client(nd->vlan, pcnet_receive,
pcnet_can_receive, d);
- register_savevm("pcnet", 0, 1, pcnet_save, pcnet_load, d);
- register_savevm("pcnet_pci", 0, 1, generic_pci_save, generic_pci_load,
- &d->dev);
+ instance = pci_bus_num(bus) << 8 | d->dev.devfn;
+ register_savevm("pcnet", instance, 1, pcnet_save, pcnet_load, d);
+ register_savevm("pcnet_pci", instance, 1, generic_pci_save,
+ generic_pci_load, &d->dev);
snprintf(d->vc->info_str, sizeof(d->vc->info_str),
"pcnet macaddr=%02x:%02x:%02x:%02x:%02x:%02x",
PCIRTL8139State *d;
RTL8139State *s;
uint8_t *pci_conf;
+ int instance;
d = (PCIRTL8139State *)pci_register_device(bus,
"RTL8139", sizeof(PCIRTL8139State),
s->cplus_txbuffer_len = 0;
s->cplus_txbuffer_offset = 0;
- /* XXX: instance number ? */
- register_savevm("rtl8139", 0, 2, rtl8139_save, rtl8139_load, s);
- register_savevm("rtl8139_pci", 0, 1, generic_pci_save, generic_pci_load,
- &d->dev);
+ instance = pci_bus_num(bus) << 8 | s->pci_dev->devfn;
+ register_savevm("rtl8139", instance, 2, rtl8139_save, rtl8139_load, s);
+ register_savevm("rtl8139_pci", instance, 1, generic_pci_save,
+ generic_pci_load, &d->dev);
#if RTL8139_ONBOARD_TIMER
s->timer = qemu_new_timer(vm_clock, rtl8139_timer, s);